package yangsw87.basic;

import java.util.Scanner;

public class J04_SungJuk {

	public static void main(String[] args) {

		// 성적 처리 프로그램 v3
		// if 문을 switch 문으로 바꿔보기

		Scanner sc=null;  // 키보드 입력 준비
		String name; // 문자 저장 변수
		int kor; // 정수 저장 변수, 국어
		int eng; // 영어
		int mat; // 수학

		int tot; // 총점
		float avg; // 실수 저장 변수, 평균
		char grd; // 단일 문자 변수, 학점

		// 상수 선언
		// final 접두사 사용, 상수명은 대문자

		final char SU = '수';
		final char WU = '우';
		final char MI = '미';
		final char YANG = '양';
		final char GA = '가';

		// 2. 이름 및 성적 입력 
		sc=new Scanner(System.in);
		System.out.print("이름은? ");
		name = sc.next(); // 키보드로 문자 입력
		System.out.print("국어점수는? ");
		kor = sc.nextInt(); // 키보드로 숫자 입력
		System.out.print("영어점수는? ");
		eng = sc.nextInt();
		System.out.print("수학점수는? ");
		mat = sc.nextInt();
		grd = ' ';
		sc.close(); //키보드 입력 종료
		

		// 3. 성적 처리 - 수식 사용

		tot = kor + eng + mat;

		avg = tot / 3;

		/*
		 * if (avg >= 90) { grd = SU; } else if (avg >= 80) { grd = WU; } else
		 * if (avg >= 70) { grd = MI; } else if (avg >= 60) { grd = YANG; } else
		 * { grd = GA; }
		 */

		// switch의 평가식의 결과값은
		// 반드시 char, int, Enum 형이어야 함
		// 단 JDK7부터는 String도 사용가능
		/*
		 * switch ((int)avg) { case 100: grd=SU; case 99: grd=SU; case 90:
		 * grd=SU;
		 * 
		 * case 89: grd=WU; case 88: grd=WU; case 80: grd=WU;
		 * 
		 * case 79: grd=MI; case 78: grd=MI; case 70: grd=MI;
		 * 
		 * case 69: grd=YANG; case 68: grd=YANG; case 60: grd=YANG;
		 * 
		 * case 59: grd=GA; case 49: grd=GA; case 39: grd=GA; case 29: grd=GA;
		 * case 19: grd=GA; case 9: grd=GA; case 0: grd=GA;
		 * 
		 * }
		 */

		/*
		 * switch((int)avg/10){ case 10: case 9: grd = SU; break; case 8: grd =
		 * WU; break; case 7: grd = MI; break; case 6: grd = YANG; break; case
		 * 5: case 4: case 3: case 2: case 1: case 0: grd = GA; }
		 */

		switch ((int) avg / 10) {
		case 10:
		case 9:
			grd = SU;
			break;
		case 8:
			grd = WU;
			break;
		case 7:
			grd = MI;
			break;
		case 6:
			grd = YANG;
			break;
		default:
			grd = GA;
		}

		// 4. 결과 출력
		// 또 다른 출력문 :
		// 출력문 : System.out.println("문자열" + 변수);

		System.out.println("이름 : " + name);
		System.out.println("국어점수 : " + kor);
		System.out.println("영어점수 : " + eng);
		System.out.println("수학점수 : " + mat);

		System.out.println("총합 : " + tot);
		System.out.println("평균 : " + avg);
		System.out.println("학점 : " + grd);
	}

}
